/* Copyright (c) 2004-2024 peigen.info. All rights reserved. */
package info.peigen.hotpot.common.service.base;

import info.peigen.hotpot.common.core.annotation.Comment;
import info.peigen.hotpot.common.core.order.OrderBase;
import jakarta.validation.constraints.Size;
import lombok.*;
import lombok.experimental.Accessors;
import lombok.experimental.FieldDefaults;
import lombok.experimental.SuperBuilder;

/**
 * <b>(ServiceOrderBase)</b>
 * 服务层入参基类
 *
 * @author Peigen
 * @version 1.0.0
 * @since 2019/05/18
 */
@EqualsAndHashCode(callSuper = true)
@SuperBuilder
@Data
@NoArgsConstructor
@AllArgsConstructor
@FieldDefaults(level = AccessLevel.PRIVATE)
@Accessors(chain = true)
public class ServiceOrderBase extends OrderBase {
    @Comment("业务订单号")
    @Size(max = 64)
    String bizOrderNo;

    @Comment("产品编码,用于标识接口在什么产品上使用")
    @Size(max = 30)
    String productCode;

    @Comment("合作伙伴Id")
    @Size(max = 30)
    String partnerId;

    @Comment("token")
    @Size(max = 10)
    String token;

    @Override
    public void check() {
        super.check();
    }
}